Method for production design and operations scheduling for plate design in the steel industry

ABSTRACT

An automated method optimally designs plates to satisfy an order book at a steel plant so as to maximize the yield of the plates designed while using capacity fully to reduce the production of surplus slabs or plates, and satisfy order deadlines. Our method consists of four main components: (1) mother plate design, (2) slab design, (3) cast design, and (4) material allocation. A column generation framework for mother plate design is used where the problem is decomposed into a master problem and a subproblem. The master problem is used to evaluate packing patterns that should be used to fulfill the order book and the subproblem generates potential one-dimensional and two-dimensional feasible packing patterns as candidates to be evaluated by the master problem. The solution to the master problem produces a list of mother plates that need to be produced. These mother plates are transformed into candidate slabs, which are represented via an interval graph. The maximal cliques in the interval graph—maximal subsets of slabs which can be grouped together to form casts—are enumerated to generate candidate casts, from which redesign information is sent to the plate/slab design processes. The cast design process is integrated with the plate design/slab design processes in the sense that information is passed from the plate/slab design processes to the cast design process and vice versa. Finally, our method has a material allocation component to assign order plates to inventory mother-plates and slabs.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention generally relates to automated optimization ofmanufacturing processes and, more particularly, to a method forproduction and operations scheduling for plate design in the steelindustry.

2. Background Description

Steel plants produce a variety of steel products, including heavyrectangular plates. Rectangular plates are used widely in ship-building,among other industries. In modem steel plants, such plates aremade-to-order according to customer needs, and thus have differentdimensions, thicknesses and quality. An important problem steelmanufacturers need to solve is how to efficiently transform molten steelinto an order book of rectangular steel plates, given variousconstraints on the intermediate steel processes and equipment, and wasteas little metal as possible.

In the prior art, the steel industry solved the above problem manually,or by ad-hoc computer methods. The drawback of a manual approach is thatchanges in manufacturing parameters cannot be easily handled, and largeorder books cannot be handled in an optimal fashion. Existing computermethods which attempt to solve this problem do not produce optimal ornear-optimal solutions. This is because they do not systematicallyexplore many different possible solutions but, typically, use heuristicsto create a single solution. The existing heuristics are designed withthe goal of producing near-optimal solutions but have no way ofguaranteeing this outcome. Further, the existing computer methodsrequire a substantial amount of human interaction, and therefore changesin manufacturing parameters cannot be easily handled, and large orderbooks cannot be handled in an optimal fashion. Also the design processis time-consuming because of manual intervention.

SUMMARY OF THE INVENTION

It is therefore an object of the present invention to provide anautomated method which will allow manufacturers of rectangular steelplates to optimally produce plates and reduce wastage of material.

It is another object of the invention to provide a method that willallow steel manufacturers to easily and quickly deal with changes inorder books, or changes in many manufacturing parameters, of rectangularplates.

According to the invention, an automated method is used to optimallydesign plates to satisfy an order book at a steel plant. The automatedmethod also specifies the sequence of operations required to create thedesigned plates, given various constraints on machines and manufacturingparameters. The main objective of this optimization is to maximize theyield of the plates designed while using capacity fully to reduce theproduction of surplus or waste material, and satisfy order deadlines.The invention has four main components: (1) mother-plate design, (2)slab design, (3) cast design, and (4) material allocation. Thesecomponents correspond to a logical division of the production processesinvolved in the manufacture of rectangular steel plates. The inventionuses a column generation framework for the mother-plate designcomponent, where the mother-plate design problem is decomposed into amaster problem and a sub-problem. The master problem is used to evaluatepacking patterns (or arrangements of order plates on larger platescalled mother-plates) that should be used to fulfill the order book andthe sub-problem generates potential one-dimensional and two-dimensionalfeasible packing patterns as candidates to be evaluated by the master.The mother-plate design component solves the master problem above andcreates a list of mother-plates that need to be produced. The slabdesign component transforms these mother-plates into an interval graphrepresenting the candidate slabs to be cast which (in the cast designcomponent) is subsequently solved for maximal subsets to generatecandidate casts. Finally, the material allocation component uses acolumn generation framework very similar to the one in the mother-platedesign component to allocate order plates to mother-plates and slabsalready in inventory.

The present invention allows steel manufacturers to handle orderdeadlines in a way which is better than current practice and to minimizewastage of material in an automated fashion and to get guaranteedoptimal or “near optimal” solutions. Also, the invention allowsmanufacturers to easily and quickly deal with changes in order books orchanges in many manufacturing parameters.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, aspects and advantages will be betterunderstood from the following detailed description of a preferredembodiment of the invention with reference to the drawings, in which:

FIG. 1 is a flow diagram illustrating an overview of the problem solvedby the invention;

FIG. 2 is a block diagram showing the production design process of heavyplate;

FIG. 3 is a flow diagram illustrating the process of integrated casttemplate and plate design;

FIG. 4 is a block diagram of the plate design process illustrating thatmultiple compatible plates can be placed in a mother plate if theirwidth difference is less than 400 mm;

FIG. 5 is a diagram illustrating the mathematical formulation of asimple, multi-order plate;

FIG. 6 is a diagram illustrating the mathematical formulation of a morecomplex, mosaic plate;

FIG. 7 is a diagram showing the process of non-bipartite weightmatching;

FIG. 8 is a diagram illustrating the column generation approach to themaster problem according to the invention;

FIG. 9 is a flow diagram of the column generation process according tothe invention;

FIG. 10 is a diagram illustrating the slab component design followingthe plate design component of the invention;

FIG. 11 is a diagram illustrating the cast template design process;

FIG. 12 is a diagram showing the interval graph of width range in thecast template design process;

FIG. 13 is a diagram illustrating maximal cliques of the interval graph;

FIG. 14 is a diagram illustrating the process of matching cliques withcast capacity;

FIG. 15 is a diagram illustrating the cast template design process;

FIG. 16 is a diagram showing an example of plate re-design for a cast;

FIG. 17 is a block diagram, similar to FIG. 4, illustrating the platere-design process;

FIG. 18 is a diagram illustrating the plate re-design process for themosaic case;

FIG. 19 is a diagram summarizing the column generation approach used inthe practice of the invention; and

FIG. 20 is a diagram which illustrates two ways of cutting orders frommother-plates.

DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT OF THE INVENTION

Referring now to the drawings, FIG. 1 gives an overview of the problem.Molten steel 11 is poured into molds to produce charges and casts 12.The charges and casts 12 are cut to produce unconditioned slabs 13which, in turn, are cut to produce slabs 14. The slabs 14 are rolled inplate factories to produce mother-plates 15. These mother-plates are cutto produce the plates 16 for customer orders. The goals of this processare to satisfy customer orders, minimize surplus and maximize yield.Yield is defined as that fraction of input material used to fill orders.There are constraints on the several processes, on the intermediateproducts, and the priority of individual orders which impact the goals.

In FIG. 2, there is shown a block diagram of the production designprocess of heavy plate. The process has as inputs material allocation21, cast planning 22, and mother-plate design 23. Material allocation 21and cast planning 22 are input to the cast template design process 24which also receives input via slab design process 25 of the mother-platedesign 23. The result of the cast template design 24 is used for aninitial factory allocation 26 which is then input to the charge/castdesign process 27. This process also receives input from the slab designprocess 25. The output of the charge/cast design process 27 is aconfirmation of factory allocation 28. Throughout this document, in thecontext of our invention, we refer to cast design and cast templatedesign interchangeably. Also, the terms plate design and mother-platedesign are used interchangeably.

The invention provides a method for optimally producing plates tosatisfy an order book or rectangular plates at a steel plant. The mainobjectives of this optimization are to maximize yield rate for platesdesigned and to maximize the on-time completion of customer orders whileusing capacity fully to reduce the production of surplus slabs or platesor steel.

FIG. 3 illustrates the process of integrated cast template and platedesign. The order book 31 is the primary input to plate design 32. Slabdesign 33 is based on the output of plate design 32 and specifies awidth range for slabs. The slab design 33 determines the maximal cliquesas derived from an interval graph in step 34. This, in turn, is oneinput to the process to create casts 35, the other input of which iscast capacity 36. The process may require more slabs as output at step37, and this is fed back with length range and, optionally, weight range38 for redesign to plate design 32.

The invention for production of plates as illustrated in FIG. 3 consistsof four main components:

a) mother-plate design,

b) slab design,

c) cast design, and

d) material allocation.

The invention uses a column generation framework for components (a)where the problem is decomposed into a master problem and a subproblem.The master problem is used to evaluate packing patterns that should beused to fulfill the order book, and the subproblem generates potentialone-dimensional and two-dimensional feasible packing patterns ascandidates to be evaluated by the master. The solution to the masterproblem produces a list of mother plates that need to be produced. Thesemother plates are then transformed into an interval graph representingthe candidate slabs to be cast which is subsequently solved for maximalsubsets to generate candidate casts. A column generation framework isused to tackle component (d), material allocation, above.

We now provide additional details of the processes targeted by ourinvention. The plate manufacturing process converts molten steel into anorder book of rectangular plates through a sequence of steps. An orderbook is a list of customer orders for plates. Each customer order is fora number of identical rectangular plates of a given dimension and steelgrade. In addition customer orders could specify delivery dates, andtolerances on the dimension and quantity of the desired plate.

Casting: A “charge” is a certain amount (usually within a permittedrange) of molten steel with an associated steel grade. Multiple chargesare grouped together (arranged in a sequence) via a caster into a “cast”which consists of one or more “strands”. A strand can be viewed as along rectangular metal object with length typically much larger than itswidth. Different strands from in a cast have different widths. The widthand thickness of a strand can be controlled in a caster. The lengthdepends on the volume of molten metal in the charge. In thisdescription, it is assumed that a “cast” has one “strand”, making thetwo terms identical.

Slab cutting: Each cast is typically cut (across its width) into anumber of “slabs” which are also rectangular and have the same width,thickness, and broad metal properties as the cast. More precisely a slabhas the same metal properties as the charge in the cast from which it iscut. Slabs can be chemically treated to acquire slightly differentchemical properties subsequently. Sometimes casts are first cut intolarger units called unconditioned slabs, which are then cut into slabs.

Slab rolling: Slabs are sent to plate factories, where they areconverted into thinner rectangular objects called mother-plates bypassing the slabs through rolling machines. There are typically dailyrolling capacity limits on these machines and plate factories. Therolling process does not change the volume or weight of steel in a slab;thus a slab and a mother-plate rolled from it have different dimensionsbut the same volume and weight.

Plate cutting: The mother-plates are sliced or cut using eithermechanical cutting machines (called “shears”) or gas-cutting machinesinto constituent order plates. A sequence of “guillotine cuts” (cutacross the length or width of a plate) is applied to cut themother-plate into order plates. After cutting, a part of themother-plate is unusable, as it does not correspond to any order plate.The currently unusable part of the mother-plate may be usable in thefuture for future orders, in which case it is retained as surplus,otherwise it is thrown away as wasted metal. The specific orders cut outare chosen partly on the basis of their delivery date and otherproperties of the orders. The orders cut out from a mother-plate haveessentially the same thickness as the mother-plate and the same metalproperties.

Many of the machines mentioned above have daily capacity limits, such asthe shears, the gas-cutting machines, the slab-rolling machines; platefactories, and casters. There are also constraints on the slab rollingand plate cutting machines which restrict the geometry of the slabs,mother-plates and orders cut from mother-plates.

The invention provides an integrated method to come up with preciseinstructions on how to fulfill orders in an order book of rectangularplates by a sequence of casting, slab cutting, slab rolling, and platecutting steps. Each of the steps specified by the invention satisfiesappropriate manufacturing constraints.

FIG. 4 illustrates a plate packing constraint, or one of the manyconstraints which restrict the collection of orders or order plateswhich can be cut from (or “packed” on) a single mother-plate, inparticular the “width difference constraint”. In a simple multi-orderplate (see FIG. 20), the order plates packed on a mother plate cannothave their widths differ by more than a specified parameter, here 400mm.

The left part of the FIG. 4 depicts a set of order plates, shown asrectangles arranged vertically. The symbols P1, P2, etc. stand fordifferent plate orders. Each plate order has an associated customerdemand, width, length and thickness; n1 represents the number ofidentical plates to be manufactured for P1, L1 its length, W1 its width,and t1 its thickness, in addition to other parameters such as grade.Order plates are “compatible” if their grade, thickness and otherparameters do not prevent them from being packed together on amother-plate.

The right part of FIG. 4 depicts a set of mother-plates, shown asrectangles arranged vertically. The symbol S1 refers to the firstmother-plate, S2 to the second, and so on. Each mother-plate has a widthand thickness; W1 is the width of S1, and t1 its thickness. A line froman order plate to a mother-plate indicates that the order-plate can bepacked on the mother-plate. Thus, P1 can be packed on S1, and so forth.The circle around the lines from plates P1, P2, P3 to S1, indicates thatthese order plates are “compatible” and can be packed together on S1.

The plate design component starts with an order book and creates a listof mother-plates along with the positions of order plates on eachmother-plate. It can also specify the plate factory each mother-plateshould be manufactured in, if needed. The mother-plates satisfy variousgeometrical constraints (such as on length and width) in addition toconstraints on the combination of orders on a mother-plate.

To obtain such an output, the invention uses a column generationframework, consisting of a master problem and a sub-problem. Thesub-problem tackles the issues of putting together (i.e., “packing”) anumber of order plates into a mother-plate in a feasible fashion(satisfying the constraints mentioned above). This is illustrated inFIGS. 5 and 6.

FIG. 5 shows a mathematical formulation for obtaining a simple pattern(or a simple multi-order mother plate) assuming two constraints onfeasible mother-plate patterns. For example, mother-plates could berestricted to have a length between 22 m and 45 m, and the difference ofthe thicknesses of all order plates on a mother-plate could berestricted to be less than 0.1 mm. In the first constraint, there is avariable “Xi” for every order “i” with length “Li”, which counts howmany copies of the order should be placed on a mother-plate. Theequation says that the sum of the lengths of orders on a mother-plateplus the length of the surplus plates added must lie between 22 m and 45m. The second constraint says that the difference between the maximumthickness and minimum thickness of orders on a mother-plate is less thanor equal to 0.1 mm. The goal is to create a mother-plate satisfying theabove two constraints while maximizing an objective function. Theobjective function computes the weight of the order plates minus thetotal waste minus the length of the surplus plates.

The mother-plates created by the sub-problem are candidates for themaster problem to consider; only a small fraction will ultimately bechosen by the master problem. Orders can be packed onto mother-plate intwo types of patterns, mosaic patterns and simple patterns.

In a simple pattern as illustrated in FIG. 5, there are a number oforder plates arranged along the length of the mother-plate, but not morethan one along the width of the mother-plate. For such patterns, knownalgorithms are used, namely: FBS (First-Best Strip), KPOG (KnaPsack withfixed Orientation and Guillotine cuts). See A. Lodi, S. Martello and D.Vigo, “Heuristic and Meta-Heuristic Approaches for a Class ofTwo-Dimensional Bin Packing Problems”, INFORMS Journal on Computing, 11(1999), pp. 406-419. There are many other algorithms from the literaturewhich can be adapted to generating feasible simple patterns; theappropriate algorithms will be determined by the application-specificcontext (e.g., the sort of geometric constraints imposed).

Mosaic patterns, as shown in FIG. 6, could have more than one order sideby side along the width of the mother-plate. FIG. 6 shows a mathematicalformulation for obtaining a mosaic pattern. As there is more than oneorder along the width of the mother-plate (two in the figure), someadditional constraints over and above the ones in FIG. 5 are needed.FIG. 6 illustrates one such constraint. In the case that a two layermosaic plate is being made (a layer is essentially a simple pattern, andtwo simple patterns are placed side by side) it asks for the differencesin the lengths of the layers to be as small as possible. To obtainmosaic patterns FIG. 7 shows an implementation of a non-bipartiteweighted matching algorithm (NBWM), as used in the cutting-stockliterature, as well as FBS and KPOG and other algorithms. See referenceA. Fritsch and O. Vomberger, “Cutting Stock by Iterated Matching”,Operations Research Proceedings, Selected Papers of the Int. Conf. on OR94, U. Derigs. A. Bachem and A. Drexl, Eds., Berlin pp. 92-97, 1995.

FIG. 7 illustrates the operation of the “Nonbipartite weighted matching”(NBWM) algorithm in the context of mosaic pattern generation. The shadedrectangular boxes stand for order plates, groups of order plates placedadjacent to each other represent partially built mother-plates. Astraight line joining a pair of order plates indicates that they can bepacked together on a mother-plate (i.e., they are “compatible”, asdescribed in FIG. 4). Such a line (or the pair) has an associated“weight” value which measures the desirability of packing the associatedorders together. A straight line joining a pair of partially builtmother-plates indicates that they can be put together on a mother-plate(i.e., they are “compatible”), such lines also have “weight” values.Each unshaded box shows a stage of the algorithm, with arrows showingtheir sequence. In the initial stage (top left box), there is a straightline between each pair of “compatible” orders with a “weight”. The NBWMalgorithm is used to calculate the collection of pairs of orders, whereno two pairs have a common order, such that the sum of the weights ofthe pairs in the collection is maximum among all collections. Thisresults in the second stage (top right box), where pairs of orders havebeen put into partial mother-plates (some orders are not matched to anyothers). The new straight lines represent pairs of “compatible” platesand their “weights” are re-computed. The NBWM algorithm is again appliedto get to the bottom left box. This overall process is repeated till oneor more complete mother plates are available (bottom right box).

In addition, orders can have certain numerical values assigned to themby the master problem, which represent abstract profit values.Typically, in initial invocations to the sub-problem, these values areidentical for all orders, but later they vary by orders. When theseabstract profit values are identical, the objective of the sub-problemis to create feasible mother-plate patterns (which are also desirablewith respect to various criteria such as amount of wasted metal on themother-plates). When these abstract profit values are not identical, thesub-problem solves the problem of creating mother-plates such that thesum of the profits of packed order plates is maximized. Profit-sensitivevariations of FBS and KPOG are used in the preferred embodiment of theinvention; however, many other algorithms in the literature can beadapted to this end.

An important point to note is that the subproblem creates a mother-platepattern, rather than a fixed mother-plates; the master problem canchoose to use the pattern many times over. The master problem tacklesthe issue of repeatedly invoking the sub-problem to get a set ofcandidate mother-plates, and then choosing the best “feasible” subset ofthese mother-plates. If necessary, the master problem can also assignthe mother-plates to be manufactured in various plate factories. Here“feasible” means that if the chosen mother-plates were actuallymanufactured from corresponding slabs in plate factories specified bythe master problem, various machine capacity constraints would not beviolated, and no order would be overfilled. The objective of the masterproblem is to maximize the yield of the mother-plates designed, whilefulfilling the order book and minimizing surplus, and also maximizingthe on-time completion of orders.

The master problem chooses a subset by solving by finding an ‘integersolution’ of a “master linear program” (abbreviated as MLP), asgenerally illustrated in FIG. 8. Here ‘linear program’ is anabbreviation for ‘linear programming problem’. Each column stands for amother-plate pattern. Each column has an associated variable. The valueof a column variable indicates how many times the associatedmother-plate pattern is to be used. In an ‘integer solution’, everycolumn variable takes on an integral value, whereas in a ‘fractionalsolution’, the column variables can take on fractional values (such as‘1.5’ say). Rows represent constraints. The first M rows stand for theorder plates. They stand for how many plates of an order are to bemanufactured. Subsequent rows stand for slab (or mother-plate) thicknessranges and say how much weight of slabs (mother-plates) should bemanufactured with a given thickness range. A number in each row of acolumn represents how much of a given capacity is used up when one unitof that pattern is manufactured. For a given order row, the number inthe column gives the number of plates of that order contained in themother plate pattern.

For example, the first mother-plate pattern has one plate of the firstorder. The numbers in the rows after the order rows represent slabweights. For example, W1 stands for the weight of the first mother-platepattern. A zero in these rows simply means that the mother-plate patterncannot be manufactured from slabs of the thickness for the row. Thenumbers in the right-most column specify capacities; either desirednumber of plates for an order row, or a capacity (given in weight) onslabs of a given thickness. The chosen mother-plate patterns must besuch that no capacities specified in the right-most column are exceeded.

The MLP has an associated objective function. Given a subset ofmother-plates (as specified by values of the associated columnvariables), the objective function assigns a numerical value (called“objective value”) to the subset. This numerical value measuresdesirability and higher values indicates higher desirability. Theprecise values assigned by the objective function or applicationspecific. For example, if the objective of the plate packing process isto create plates with high yield-rate, we can encode this in theobjective function. In general, as we are dealing with a linearprogramming problem, the objective function assigns a single number toeach mother-plate pattern. If a mother-plate pattern is used twice, thenthe associated objective function value is multiplied by two. If a setof mother-plate patterns are used, the objective function values fordifferent mother-plate patterns are added up to get the final objectivevalue.

The goal of the master problem is to obtain the most numericallydesirable subset of mother-plates from a set of mother-plates generatedby repeated invocations to the sub-problems, while not violatingappropriate constraints. It performs this task by creating the MLPabove, where the numerical constraints in the MLP are translations of orare derived from actual manufacturing constraints. The columns of themaster problem correspond to the mother-plate patterns generated by it.The master problem solves the MLP by using commercially available linearand integer programming solvers. The master problem selects a desirablesubset of mother-plates based on the solution of the MLP. The overallflow of the master problem is described below and depicted in FIG. 9.

The process shown in FIG. 9 begins when the sub-problems which createfeasible mother-plate patterns, either simple or mosaic, are invoked infunction block 901. In particular, the specific algorithms of NBWM, FBSand KPOG could be invoked to get feasible mother-plate patterns. In thisinvocation all orders have equal abstract profit values, say one. Thisinvocation of function block 901 results in an initial list ofmother-plate patterns. Based on this list a MLP is set up in 902, withthe initial patterns corresponding to the initial columns of the MLP. Alinear programming (LP) solver is called (usually off-the-shelfcommercial software) to obtain a fractional solution to the MLP in 903.This solution assigns fractional numbers to the mother-plate patternsand has an associated objective value, and dual values for eachconstraint in the MLP. In particular, there are dual values for eachorder, representing abstract profit values for the orders (P1 in 904).At this point the master problem tries to improve the objective valuesof the MLP by creating new mother-plate patterns in function block 905.905 invokes function block 906, which is very similar to 901, exceptthat here the dual prices P1 are used to distinguish between orders;mother-plates are created with orders having higher “profit” or highersums of dual values for the orders in the mother-plates. While theheuristics in 906 are able to obtain additional mother-plate patterns(NO to the question “patterns exhausted” in 907). They are iterativelyinvoked, and the new mother-plate patterns are collected in a list. Thisiterative process stops when an improvement in the objective functionvalue is not possible or is too time-consuming. When no more patternscan be generated (YES in 907), the new list of mother-plate patterns isused to add a new set of columns to the MLP (in 908). A fractionalsolution to the MLP is obtained in 909, with new dual prices P2 (in910). Finally an integer solution to the MLP is obtained in 911, eitherby using rounding heuristics or standard integer programming solvers. Ifthe solution (or the mother-plate patterns corresponding to it) isacceptable in 912, the process ends, else we return to block 905 withthe new dual prices P2 and repeat.

The repeated creation of columns is why the above framework is called acolumn generation framework. The important point here is that thoughthere are an enormous number of possible mother-plate designs, themaster-problem guides the creation of a small number of candidatedesigns. Another important point is that it chooses from a large set ofcandidates.

The master linear program not only yields a set of mother-plates to beused by other components, but also provides guarantees of how close tothe best possible solution the returned solution is. This is awell-known property of linear programming based algorithms.

At the termination of the plate design component, a list ofmother-plates and associated plate factories is available. Typically, amother-plate can be manufactured from slabs with different thicknesses.For a specific slab thickness, there is flexibility in the slab widthand length; that is, one mother-plate can be manufactured from manydifferent slabs with different widths and lengths, but the samethickness. This is illustrated in FIG. 10.

FIG. 10 shows the relationship between mother-plate dimensions and slabdimensions and how slabs are designed after designing mother-plates. Insteel plants, slabs are rolled to get mother-plates with differentdimensions but having the same weight. Here Ws, Ls, Ts stand for thewidth, length and thickness, respectively, of a slab, and Wp, Lp, Tpstand for the width, length and thickness, respectively, of amother-plate rolled from the slab. The Greek letter rho is the densityof steel. Given Wp, Lp, Tp, and rho, and also Ts, the area “A”=Ws×Ls ofthe slab can be computed from the first equality shown in the figure.

Thus, for a given mother-plate and given slab thickness from which it isto be rolled, the slab area is fixed. This gives a relationship betweenWs and Ls, which is plotted in the bottom right. Each curved linecorresponds to one mother-plate (and to one slab), and plots thepossible Ws, Ls values, where Ws×Ls=slab area (“A”). Thus, S1 is a slab,and the associated curved line is a plot of its possible length versusits possible width. Smaller slab areas (S10) correspond to curved lineson the left of the plot, larger slab areas (S1) to lines on the right.In addition, there are usually minimum and maximum values ofmanufacturable slab widths and lengths, which restrict the slab widthsto lie in intervals. For example, S1 can be manufactured with all widthsin the interval 11, and still be made into the desired mother-plate.

A choice has to be made as to the geometry of the slab associated with amother-plate. For each allowed slab thickness (there are typically onlya few such thicknesses) a range of feasible widths and lengths (for eachwidth, there is exactly one length) is computed in this stage. Thechoice of which slab thickness to choose is actually partly handled inthe master linear program for plate design.

At the end of the slab design phase, a list of candidate slabs isavailable. A single mother-plate may correspond to multiple candidateslabs, each with a different slab thickness. Each candidate slab has itsthickness specified but has a range of allowed widths (and correspondinglengths), as shown in FIG. 10. The goal of this component is to fix awidth for each candidate slab and to group slabs having the same widthand length into as few and as large “cast templates” as possible, asillustrated in FIG. 11.

FIG. 11 shows a list of slabs, at the end of slab design process, whichhave to be grouped together to form casts. Each horizontal linerepresents a slab, or more precisely the possible widths for a slab. Thetwo end-points of each line show the minimum (left end-point) andmaximum widths (right end-point) allowed for the corresponding slabs,which can also be manufactured at all widths in between. All widths aremeasured on the same scale, and plotted on the x-axis. Two slabs can beplaced in the same cast-template, if they can be manufactured with thesame width; this is so if a vertical line can pass through both theirwidth intervals. FIG. 11 depicts the grouping of slabs, based on theirwidth intervals, into cast-templates. A cast-template itself has apossible range of widths, which is the largest common range of widths ofits constituent slabs. In the figure, all slab width intervals lie inbetween 1500 mm and 2510 mm. Cast 10 consists of all slabs contained inthe circle in the bottom left corner, cast 1 consists of slabs containedin the other circle. Based on its constituent slabs, Cast 10 has apossible width range specified by the two vertical lines in the bottomleft. None of the remaining slabs can be added to either Cast 10 or Cast1, as they don't share a common width with the allowed widths for eitherCast 10 or Cast 1.

Typically, the sequence of slabs in a cast is also constrained, but wedo not solve the sequencing problem here. Hence, we refer to a groupingof slabs with the same width and length as a “cast template” rather thana cast. It can be converted into a cast by arranging the slabs into afeasible sequence. Thus, the output of this component is a set of “good”cast templates in that each cast template contains many slabs.

Cast templates are created by representing the variability in widths ofthe candidate slabs via an interval graph, as shown in FIG. 12, andsolving the “maximal clique in interval graphs” problem, which is awell-known and easy to solve problem in graph theory. To be moreprecise, the range of feasible widths for a slab lie in an interval.That is, there are numbers x and y such that x, y, and every number inbetween is a feasible choice for the width of a slab. If a number ofslabs with the same thickness have intersecting width ranges, that isthere is a common feasible width for all slabs, then they could be puttogether into a common cast template having the same common width, asshown in FIG. 11. A common width is desirable if it is feasible for manyslabs; this would result in a large cast template. To find such commonwidths, we create a graph where each node (or point) represents a slab,and we create an edge (or line) between two nodes if the associatedslabs have the same thickness and intersecting width ranges, as shown inFIG. 12. Only a partial interval graph is shown here. For example, thereis a ‘node’ for the top-most slab, and for the next six slabs. The firstand second ‘nodes’ are joined as the slabs share a common width. Aclique is a set of nodes where each is connected to the rest in the setwith an edge. A clique in the graph in FIG. 12 corresponds to a set ofslabs which can be manufactured with a common width. A maximal clique isone which cannot be expanded by adding a node to the collection. Weenumerate the maximal cliques in this graph. If a slab falls in twocliques, the tie between the two cast-templates is broken according tosome criteria. We use each maximal clique to get a cast template, asshown in FIGS. 13 and 14.

FIG. 13 shows a set of(three) maximal cliques in an interval graph. Wegroup slabs in such maximal cliques into cast-templates. The wavycircles represent slabs in a cast-template. Finally a clique(cast-template) may be too small, i.e., it may not satisfy minimummanufactarability parameters, in which case it may need to be expandedby adding more slabs to the cast-template. The dashed line in FIG. 13indicates a set of slabs which we may wish to add the (clique) casttemplate in the bottom middle; however the set of slabs to be added donot have a common width range with the slabs already in the clique, andmay have to be redesigned. The redesign of slabs is explained later.

FIG. 14 shows a list of casting machines (1 cc, 2 cc, 3 cc) and threeplate factories (shown only implicitly). After slabs are cut from casts,they are sent to different plate factories to be rolled intomother-plates. There are typically capacity constraints on how muchweight can be sent from each casting machine to each plate factory. Inthe figure, three plate factories are assumed. For each casting machine,the amount to be sent to each plate factory is represented by a bluerectangle, with the area of the rectangle representing the total weightof slabs to be sent to the corresponding plate factory (assume all aregiven in the same order, say 1, 2, 3, for each casting machine). When aclique (cast-template) is assigned to a casting machine, the slabs inthe cast (which are to be made on specific plate factories) contributeto the weight of slabs going to plate factories from that castingmachine. Thus cast-templates must be assigned to casting machines so asnot to exceed casting capacities and plate factory capacities.

It may happen that the cast-template design phase does not find enoughslabs of the appropriate geometries and cannot create goodcast-templates, in that some cast-templates have too few slabs. It couldalso happen that the cast-templates cannot easily be converted intocasts. In such a situation the cast-template process may wish to havemore slabs of given thickness than exist in the output from the platedesign/slab design phase. The algorithmic framework allows the casttemplate design component to communicate this information back to theplate design component (which modifies its constraints on the maximummanufactured quantity by slab thickness) and creates a new plate design(see FIGS. 3 and 15 to 18).

FIG. 15 illustrates some aspects of the plate redesign process. Aftercast-templates 10 and 1 have been formed (with slabs circled in thebottom left and top right, respectively), the slabs circled with adashed line may be left over, and can go into neither cast-template.

Now if the weight of both cast-templates is less than the manufacturableminimum, new slabs have to be added to both cast-templates. Inparticular, new slabs which share a common width with the width range ofcast 10 and cast 1 have to be manufactured. One way to do this is tomodify the slabs left over. More precisely, one can take the orderspacked on the mother-plates corresponding to the left over slabs, andcreate new mother-plates, and corresponding slabs which have eithersmaller width (these come from lower weight slabs), so that they can gointo cast-template 10, or larger width (from higher weight slabs), sothat they can go into cast-template 1.

FIG. 16 illustrates computation of the new desired slab width ranges inthe plate redesign process. Assume cast-template 1 needs additionalslabs. The vertical lines marked by WLO and WHI stand for the minimumand maximum widths of cast-template 1 based on the slabs incast-template 1; it can be manufactured with all widths in between. Fora new slab to be added to cast-template 1, it needs to be manufacturablewith a width in between WLO and WHI. Suppose the slab in the middle ofthe figure (shown by a dashed line) is to be redesigned with the samethickness. Its weight has to be increased which implies that its areaincreases; thus the width-length tradeoff curves (shown in FIG. 10) haveto move to the right. Say the slab has to be manufactured with a lengthof 2510 mm. Then its area has to lie between 2510×WLO and 2510×WHI.

FIG. 17 illustrates computation of the new desired mother-plate lengthranges in the plate redesign process. Assume (as in FIG. 16) that weneed slabs with widths between WLO and WHI and with thickness “T” andlength 2510. Suppose we plan to roll it into a mother-plate withthickness “t” (say to cut out orders with thickness “t”) and width “Wp”.Since the weight (or volume) of the slabs and mother-plate are same, theminimum and maximum lengths LNEW,LO and LNEW,HI for the mother-plate(shown by the two vertical lines on the mother-plate) can be calculatedby equating the minimum and maximum volumes of the mother-plate and slabas shown in the equation boxes at the top of the figure. From this onegets a constraint on how long the mother-plate should be, which modifiesthe original length constraint shown in FIG. 5.

FIG. 18 modifies FIG. 4 by illustrating the “width-differenceconstraint” shown there in the presence of the additional lengthconstraints (LNEW,LO and LNEW,HI) obtained in FIG. 17.

With this we conclude the description of three components of theinvention, namely the mother-plate design component, the slab designcomponent, and the cast design component. We also conclude thedescription of how they interact with each other.

Often some of the created slabs, mother-plates and order plates areunused and stored in inventory for future use. Before manufacturing newslabs and plates, the inventory is usually checked to see if some of theslabs and mother-plates can be used to produce the order plates usingthe manufacturing processes of slab rolling and plate cutting. We callthis process material allocation. Our invention uses a column generationframework very similar to the one for the plate design problem. Thisframework has a different master problem but the same sub-problem as theplate design phase. Hence, we will only outline the master problem here.

The fundamental difference between material allocation and plate designis that in the first case we are trying to match existing slabs to orderplates, whereas in the second we are designing new slabs. Otherwise, theconstraints on machine capacities and geometries, on packing orders ontoplates, on not overproducing for a particular order, are all the same.Hence, we create the master linear program for the material allocationproblem by augmenting the master linear program for plate design in twoways. First, we add rows or constraints to ensure that createdmother-plates correspond to slabs and unconditioned slabs andmother-plates in inventory. Second, we (implicitly) add extra columnsfor the existing orders in inventory.

The iterative process of calling the sub-problem repeatedly aftersolving the master linear program and setting abstract order profitvalues is identical to that in the plate design component.

FIG. 19 illustrates two ways of cutting orders from mother-plates bygiving two example mother-plates. Mother-plates are here depicted asrectangles (containing other rectangles which are order plates) withtheir length shown horizontally and width shown in the verticaldirection. Thus, the first mother plate has length 45 meters and width4.5 meters. Here order plates are shown as rectangles with the ordernumbers written in them.

The first mother-plate is a simple multi-order mother-plates (simplepattern for short), order plates “O1”, “O2”, “O3” are arrangedhorizontally along the length of the mother-plate without overlap. Theempty space in the mother-plate (not covered by an order plate) istreated as waste. The second mother-plate is a mosaic multi-ordermother-plates (mosaic pattern for short); here order plates are arrangedboth along the width and length of the mother-plate. Our invention dealswith both types of mother-plates.

The invention provides a new way of doing integrated cast-templatedesign and slab/plate design. The specific innovations are:

1) A column generation framework for plate design (which also handlessome aspects of slab design), where variable size plates are allowed,and consisting of a master problem to choose from candidate mother-platepatterns and a sub-problem to give good candidate patterns.

2) Using an interval graph to represent candidate slabs and enumeratingmaximal cliques to get cast-templates.

3) A column generation framework for Material Allocation consisting of amaster problem to choose from candidate mother-plate patterns forexisting slabs and mother-plates and a sub-problem to give goodcandidate patterns.

4) Integrated cast-template design and plate/slab design where a columngeneration framework for plate design uses a master linear program todesign plates and subsequently slabs for the cast-template designprocess, and the cast-template design process gives redesign informationto the plate/slab design process.

We would like to mention that part of (1) and (3) can be found in theresearch literature and point out how our innovation differs fromexisting works. A well-known problem in the literature is the“cutting-stock problem”. See references D. L. Applegate, L. S. Buriol,B. L. Dillard, D. S. Johnson, and P. W. Shor, “The Cutting-StockApproach to Bin Packing: Theory and Experiments”, Proceedings of ALENEX,2003; Z. Degrave and L. Schrage, “Optimal Integer Solutions toIndustrial Cutting Stock Problems, INFORMS Journal on Computing, 11(1999), pp. 406-419; P. Gilmore and R. Gomory, “A linear programmingapproach to the cutting stock problem”, Operations Research, 9 (1961),pp. 849-859; and P. Gilmore and R. Gomory, “A linear approach to thecutting stock problem—Part II”, Operations Research, 11 (1963) pp.863-888. This involves an infinite inventory of equal sizedmother-plates or finitely many different size mother-plates, and thegoal is to cut out given order plates from the existing inventory. Thestandard approach for this problem is to use a column generationframework with a master problem to choose between candidates andsub-problems to generate candidate patterns. Our invention differs inthe following ways:

i) In innovation (1) above, we do not have fixed-size inventory platesavailable; we have to design varying size plates.

ii) In innovation (3) above, we have inventory slabs in addition toinventory plates. As slabs can be rolled in varying size mother-plates,we effectively have a combination of fixed-size and varying-sizeinventory mother-plates.

iii) Finally, our invention provides a way of performing integratedcast-template design and plate/slab design, which issue is absent in thecutting-stock literature.

While the invention has been described in terms of a single preferredembodiment, those skilled in the art will recognize that the inventioncan be practiced with modification within the spirit and scope of theappended claims.

1. A method for production design and operations scheduling for steel plate design comprising the steps of: implementing a column generation framework for varying size plate design consisting of a master problem to choose from candidate mother-plate patterns and a sub-problem to give good candidate patterns; using an interval graph to represent candidate slabs and enumerating maximal cliques to get cast-templates; implementing a column generation framework for material allocation consisting of a master problem to choose from candidate mother-plate patterns for existing slabs and a sub-problem to give good candidate patterns; and integrated cast-template design and plate/slab design where a column generation framework for plate design uses a master linear program to design plates and subsequently slabs for the cast-template design process, and the cast-template design process gives redesign information to the plate/slab design process.
 2. An automated method to optimally design plates to satisfy an order book at a steel plant and specify a sequence of operations required to create the designed plates, given various constraints on machines and manufacturing parameters, comprising the steps of: implementing a column generation framework for mother-plate design to create a list of mother-plates that need to be produced, wherein a mother-plate design problem is decomposed into a master problem and a sub-problem, the master problem being used to evaluate packing patterns that should be used to fulfill an order book and the sub-problem generating potential one-dimensional and two-dimensional feasible packing patterns as candidates to be evaluated by the master problem; transforming mother-plates into an interval graph representing the candidate slabs to be cast which is subsequently solved for maximal subsets to generate candidate casts; and allocating material using a column generation framework very similar to the one in the mother-plate design component to allocate order plates to mother-plates and slabs already in inventory.
 3. The automated method recited in claim 2, wherein the sub-problem creates feasible mother-plate patterns using specific algorithms selected from the group consisting of Non-Bipartitie Weighted Matching (NBWM), First-Best Strip (FBS) and KnaPsack with fixed Orientation and Guillotine cuts (KPOG).
 4. The automated method recited in claim 2, wherein the step of transforming comprises the steps of: setting up a Master Linear Program (MLP) based on results in an initial list of mother-plate patterns, with the initial patterns corresponding to the initial columns of the MLP; and calling a linear programming (LP) solver to obtain a fractional solution to the MLP.
 5. The automated method recited in claim 4, wherein the fractional solution assigns fractional numbers to the mother-plate patterns and has an associated objective value, and dual values for each constraint in the MLP.
 6. The automated method recited in claim 5, wherein there are dual values for each order, representing abstract profit values for the orders and wherein the master problem tries to improve the objective values of the MLP by creating new mother-plate patterns.
 7. A computer readable medium containing an executable computer program for an automated method to optimally design plates to satisfy an order book at a steel plant and specify a sequence of operations required to create the designed plates, given various constraints on machines and manufacturing parameters, the executable computer program implementing the steps of: implementing a column generation framework for mother-plate design to create a list of mother-plates that need to be produced, wherein a mother-plate design problem is decomposed into a master problem and a sub-problem, the master problem being used to evaluate packing patterns that should be used to fulfill an order book and the sub-problem generating potential one-dimensional and two-dimensional feasible packing patterns as candidates to be evaluated by the master problem; transforming mother-plates into an interval graph representing the candidate slabs to be cast which is subsequently solved for maximal subsets to generate candidate casts; and allocating material using a column generation framework very similar to the one in the mother-plate design component to allocate order plates to mother-plates and slabs already in inventory.
 8. The computer readable medium recited in claim 7, wherein the sub-problem creates feasible mother-plate patterns using specific algorithms selected from the group consisting of Non-Bipartitie Weighted Matching (NBWM), First-Best Strip (FBS) and KnaPsack with fixed Orientation and Guillotine cuts (KPOG).
 9. The computer readable medium recited in claim 7, wherein the step of transforming comprises the steps of: setting up a Master Linear Program (MLP) based on results in an initial list of mother-plate patterns, with the initial patterns corresponding to the initial columns of the MLP; and calling a linear programming (LP) solver to obtain a fractional solution to the MLP.
 10. The computer readable medium recited in claim 9, wherein the fractional solution assigns fractional numbers to the mother-plate patterns and has an associated objective value, and dual values for each constraint in the MLP.
 11. The computer readable medium recited in claim 10, wherein there are dual values for each order, representing abstract profit values for the orders and wherein the master problem tries to improve the objective values of the MLP by creating new mother-plate patterns. 